/**
 * Token 初始化模块
 * 在应用启动时检查并初始化token自动刷新
 */

import { useAccessStore } from '@vben/stores';

import { tokenManager } from './token-manager';

/**
 * 初始化token管理
 * 在应用启动时调用，检查是否有有效的token并启动自动刷新
 */
export function initTokenManager(): void {
  const accessStore = useAccessStore();

  // 如果存在有效的token，启动自动刷新
  if (accessStore.accessToken && accessStore.refreshToken) {
    console.log('检测到已存在的token，启动自动刷新功能');
    tokenManager.startAutoRefresh();
  }
}

// 在模块加载时自动初始化
if (typeof window !== 'undefined') {
  // 延迟执行，确保stores已经初始化
  setTimeout(() => {
    initTokenManager();
  }, 3000);
}
